using Amazon.ECS;
using Amazon.ECS.Model;
using RomanJendrusz.Amazon.ETL.Messages;

namespace RomanJendrusz.Amazon.ETL.Infrastructure.Bus.RequestHandlers
{
    public class SellerListingLookupRequestHandler : AbstractRequestHandler<SellerListingLookupRequest, SellerListingLookupResponse>
    {
        public SellerListingLookupRequestHandler(AmazonECSFactory remoteServiceFactory) : base(remoteServiceFactory)
        {
        }

        public SellerListingLookupRequestHandler(AmazonECS remoteService) : base(remoteService)
        {
        }


        protected override SellerListingLookupResponse ExecuteRemoteCall(params SellerListingLookupRequest[] requests)
        {
            return remoteService.SellerListingLookup(requests);
        }

        protected override bool ValidateRequest(AmazonRequest request)
        {
            return request.Destination == AwsDestinations.SellerListingLookup;
        }
    }
}